EN FR
EN FR


Section: New Software and Platforms

tiptop

Keywords: Performance, hardware counters, analysis tool.

Scientific Description

Status: Registered with APP (Agence de Protection des Programmes). Available under GNU General Public License v2, with number IDDN.FR.001.450006.000.S.P.2011.000.10800. Current version is 2.3, released June 2015.

Tiptop is a new simple and flexible user-level tool that collects hardware counter data on Linux platforms (version 2.6.31+). Tiptop has been integrated in major Linux distributions, such as Fedora, Debian, Ubuntu. Functional Description The goal is to make the collection of performance and bottleneck data as simple as possible, including simple installation and usage. In particular, we stress the following points.

  • Installation is only a matter of compiling the source code. No patching of the Linux kernel is needed, and no special-purpose module needs to be loaded.

  • No privilege is required, any user can run tiptop — non-privileged users can only watch processes they own, ability to monitor anybody's process opens the door to side-channel attacks.

  • The usage is similar to top. There is no need for the source code of the applications of interest, making it possible to monitor proprietary applications or libraries. And since there is no probe to insert in the application, understanding of the structure and implementation of complex algorithms and code bases is not required.

  • Applications do not need to be restarted, and monitoring can start at any time (obviously, only events that occur after the start of tiptop are observed).

  • Events can be counted per thread, or per process.

  • Any expression can be computed, using the basic arithmetic operators, constants, and counter values.

  • A configuration file lets users define their prefered setup, as well as custom expressions.